/**
 * Created by Administrator on 2019/5/21 0021.
 */
// 修改cesium场景中不含轨迹对象的三维属性
// id：该对象ID，UUID字符串
// ModelVisible：三维模型是否可见（true/false）
// ModelSize：三维模型大小，数值（1000）
// MarkerVisible：二维标签是否可见（true/false）
// MarkerPath：二维标签图片路径，字符串
// MaekerPixelSize：二维标签图片大小（1）
// MarkerColor：二维标签颜色，数组：[R,G,B,255]（[255,0,0,255]）
// MarkerXOriginPos：二维标签水平对齐，字符串，三种可选（"CENTER"，"LEFT"，"RIGHT"）
// MarkerYOriginPos：二维标签垂直对齐，字符串，三种可选（"CENTER"，"LEFT"，"RIGHT"）
import CZML_GENERALTOOLS_CLASS from "../main/CZML_GENERALTOOLS_CLASS.js"
import SMAP_LinkedList from "../utils/SMAP_LinkedList.js"
class CZML_NonOrbitObject3DProperty {
    constructor(viewer, id, ModelVisible, ModelSize,
                MarkerVisible, MarkerPath, MaekerPixelSize, MarkerColor, MarkerXOriginPos, MarkerYOriginPos) {
        this._viewer = viewer
        this.id = id
        this.ModelVisible = ModelVisible
        this.ModelSize = ModelSize
        this.MarkerVisible = MarkerVisible
        this.MarkerPath = MarkerPath
        this.MaekerPixelSize = MaekerPixelSize
        this.MarkerColor = MarkerColor
        this.MarkerXOriginPos = MarkerXOriginPos
        this.MarkerYOriginPos = MarkerYOriginPos
    }

    HEU_ModifyNonOrbitObject3DProperty() {
        // 查找对应id
        const CzmlList = new SMAP_LinkedList()
        const FindNode = CzmlList.find(function(node) {
            return node.data().id === this.id
        })

        // 修改三维属性
        if (FindNode != null) {
            // 三维模型属性
            FindNode.data().model.show = this.ModelVisible
            FindNode.data().model.scale = this.ModelSize
            // 二维图标属性
            FindNode.data().billboard.show = this.MarkerVisible
            FindNode.data().label.show = this.MarkerVisible
            FindNode.data().billboard.image = this.MarkerPath
            FindNode.data().billboard.scale = this.MaekerPixelSize
            FindNode.data().label.fillColor.rgba = this.MarkerColor
            FindNode.data().billboard.horizontalOrigin = this.MarkerXOriginPos
            FindNode.data().billboard.verticalOrigin = this.MarkerYOriginPos
            // 上图
            CZML_GENERALTOOLS_CLASS.Upper(this._viewer)
        }
    }
}
export default CZML_NonOrbitObject3DProperty
